//package com.yunda.rfid_library;
//
//import android.content.Context;
//import android.nfc.FormatException;
//import android.nfc.NdefMessage;
//import android.nfc.NdefRecord;
//import android.nfc.tech.Ndef;
//import android.os.Bundle;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.ProgressBar;
//import android.widget.TextView;
//
//import androidx.annotation.Nullable;
//import androidx.fragment.app.DialogFragment;
//
//import java.io.IOException;
//import java.nio.charset.Charset;
//
//public class NFCWriteFragment extends DialogFragment {
//
//    public static final String TAG = NFCWriteFragment.class.getSimpleName();
//
//    public static NFCWriteFragment newInstance() {
//
//        return new NFCWriteFragment();
//    }
//
//    private TextView mTvMessage;
//    private ProgressBar mProgress;
//    private Listener mListener;
//
//    @Nullable
//    @Override
//    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//        View view = inflater.inflate(R.layout.fragment_write,container,false);
//        initViews(view);
//        return view;
//    }
//
//    private void initViews(View view) {
//
//        mTvMessage = (TextView) view.findViewById(R.id.tv_message);
//        mProgress = (ProgressBar) view.findViewById(R.id.progress);
//    }
//
//    @Override
//    public void onAttach(Context context) {
//        super.onAttach(context);
//        mListener = (MainActivity)context;
//        mListener.onDialogDisplayed();
//    }
//
//    @Override
//    public void onDetach() {
//        super.onDetach();
//        mListener.onDialogDismissed();
//    }
//
//    public void onNfcDetected(Ndef ndef, String messageToWrite){
//
//        mProgress.setVisibility(View.VISIBLE);
//        writeToNfc(ndef,messageToWrite);
//    }
//
//    private void writeToNfc(Ndef ndef, String message){
//
//        mTvMessage.setText(getString(R.string.message_write_progress));
//        if (ndef != null) {
//
//            try {
//                ndef.connect();
//                NdefRecord mimeRecord = NdefRecord.createMime("text/plain", message.getBytes(Charset.forName("US-ASCII")));
//                ndef.writeNdefMessage(new NdefMessage(mimeRecord));
//                ndef.close();
//                //Write Successful
//                mTvMessage.setText(getString(R.string.message_write_success));
//
//            } catch (IOException | FormatException e) {
//                e.printStackTrace();
//                mTvMessage.setText(getString(R.string.message_write_error));
//
//            } finally {
//                mProgress.setVisibility(View.GONE);
//            }
//
//        }
//    }
//}
